package Demo2;

import java.util.Arrays;

public class Test {
    //    public static void main(String[] args) {
//        //数组去重 - 去除重复的数据
//        //使用binarySearch方法的时候，如果有重复的元素就不能确定返回的值是前是后
////        int[] array = {1, 4, 7, 2, 5, 3, 2, 4, 1, 8, 9, 4};
////
////        int[] newArray = new int[array.length];
////        Arrays.sort(array);
////        int index = 0;
////        for (int i = 0; i < array.length; i++) {
////            //使用Array中方法binarySearch方法时数组必须是有序的
////            if (Arrays.binarySearch(newArray, array[i]) < 0) {
////                newArray[index++] = array[i];
////            }
////        }
////        for (int i = 0; i <= index; i++) {
////            System.out.print(newArray[i] + " ");
////        }
//
//
////        int[] array = {1, 4, 7, 2, 5, 3, 2, 4, 1, 0, 8, 9, 4};
////        String[] strArray = (String[]) array;
//
//
////        int[] array = {1, 4, 7, 2, 5, 3, 2, 4, 1, 8, 9, 4};
////        Arrays.sort(array); // 先对数组进行排序
////
////        int[] newArray = new int[array.length];
////        int index = 0;
////        for (int i = 0; i < array.length; i++) {
////            //直接使用由于数组中有0，是无序的，所以不可以
////            if (Arrays.binarySearch(newArray, 0, index, array[i]) < 0) { // 如果当前元素不在新数组中
////                newArray[index++] = array[i]; // 添加到新数组中
////            }
////        }
////
////        // 截取不重复元素的部分
////        //使用copyOf来伸缩数组
////        newArray = Arrays.copyOf(newArray, index);
////
////        // 输出结果
////        System.out.println(Arrays.toString(newArray));
//
//    }
    public static void main(String[] args) {
        //取出数据判断是否存在
        //数组去重
//        int[] array = {1, 4, 7, 2, 5, 3, 2, 4, 1, 8, 9, 4};
//        int[] newArray = new int[array.length];
//        Arrays.sort(array);
//        int index = 0;
//        for (int i = 0; i < array.length; i++) {
//            //数组初始值全部是0，无序
//            if (index == 0 || Arrays.binarySearch(newArray, 0, index, array[i]) < 0) {
//                newArray[index++] = array[i];
//            }
//        }
//
//        int[] ret = Arrays.copyOf(newArray, index);
//        System.out.println(Arrays.toString(ret));

        //字符串去重
//        String str = "qwertretw";
//        StringBuilder stringBuilder = new StringBuilder();
//        for(int i = 0;i<str.length();i++){
//            String s = String.valueOf(str.charAt(i));
//            if(stringBuilder.indexOf(s)<0){
//                stringBuilder.append(s);
//            }
//        }
//        System.out.println(stringBuilder.toString());

    }
}
